(DEFPROP UNMACEXPAND (LAMBDA (X) (PROG NIL (COND [(PATOM X) (RETURN NIL)] [(EQ (CAR X) 'MACROEXPANSION) (RPLACA X (CAADDR X)) (RPLACD X (CDADDR X))]) LOOP (UNMACEXPAND (CAR X)) (COND [(CONSP (SETQ X (CDR X))) (GO LOOP)] [T (RETURN NIL)]))) EXPR)